home *** CD-ROM | disk | FTP | other *** search
-
-
-
- AAAATTTTTTTTRRRR____RRRREEEEMMMMOOOOVVVVEEEE((((2222)))) AAAATTTTTTTTRRRR____RRRREEEEMMMMOOOOVVVVEEEE((((2222))))
-
-
-
- NNNNAAAAMMMMEEEE
- attr_remove, attr_removef - remove a user attribute of a filesystem
- object
-
- CCCC SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
- ####iiiinnnncccclllluuuuddddeeee <<<<ssssyyyyssss////aaaattttttttrrrriiiibbbbuuuutttteeeessss....hhhh>>>>
-
- iiiinnnntttt aaaattttttttrrrr____rrrreeeemmmmoooovvvveeee ((((ccccoooonnnnsssstttt cccchhhhaaaarrrr ****ppppaaaatttthhhh,,,, ccccoooonnnnsssstttt cccchhhhaaaarrrr ****aaaattttttttrrrrnnnnaaaammmmeeee,,,, iiiinnnntttt ffffllllaaaaggggssss))));;;;
-
- iiiinnnntttt aaaattttttttrrrr____rrrreeeemmmmoooovvvveeeeffff ((((iiiinnnntttt ffffdddd,,,, ccccoooonnnnsssstttt cccchhhhaaaarrrr ****aaaattttttttrrrrnnnnaaaammmmeeee,,,, iiiinnnntttt ffffllllaaaaggggssss))));;;;
-
- OOOOVVVVEEEERRRRVVVVIIIIEEEEWWWW
- The _a_t_t_r group of system calls implement the ability for a user to attach
- name/value pairs to objects within the filesystem.
-
- They could be used to store meta-information about the file. For example
- "character-set=kanji" could tell a document browser to use the Kanji
- character set when displaying that document and "thumbnail=..." could
- provide a reduced resolution overview of a high resolution graphic image.
-
- The _n_a_m_e_s can be up to MAXNAMELEN bytes in length, terminated by the
- first 0 byte. The intent is that they be printable ASCII (or other
- character set) names for the attribute.
-
- The _v_a_l_u_e_s can be up to ATTR_MAX_VALUELEN (currently 64KB) of arbitrary
- binary data.
-
- Attributes can be attached to all types of inodes: regular files,
- directories, symbolic links, device nodes, etc.
-
- There are 2 disjoint attribute name spaces associated with every
- filesystem object. They are the rrrrooooooootttt and uuuusssseeeerrrr address spaces. The rrrrooooooootttt
- address space is accessible only to privileged users, and only then by
- specifying a flag argument to the function call. A privileged user can
- be either the superuser in an IIIIRRRRIIIIXXXX environment, or a user with
- CCCCAAAAPPPP____DDDDEEEEVVVVIIIICCCCEEEE____MMMMGGGGTTTT capability. Other users will not see or be able to modify
- attributes in the rrrrooooooootttt address space. The uuuusssseeeerrrr address space is
- protected by the normal file permissions mechanism, so the owner of the
- file can decide who is able to see and/or modify the value of attributes
- on any particular file.
-
- Attributes are currently fully supported only in the XFS and CXFS
- filesystem types. Other filesystem types may provide a partial
- implementation.
-
- DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
- The _a_t_t_r__r_e_m_o_v_e and _a_t_t_r__r_e_m_o_v_e_f functions provide a way to remove
- previously created attributes from filesystem objects.
-
- _P_a_t_h points to a path name for a filesystem object, and _f_d refers to the
- file descriptor associated with a file. If the attribute _a_t_t_r_n_a_m_e
- exists, the attribute name and value will be removed from the fileystem
-
-
-
- PPPPaaaaggggeeee 1111
-
-
-
-
-
-
- AAAATTTTTTTTRRRR____RRRREEEEMMMMOOOOVVVVEEEE((((2222)))) AAAATTTTTTTTRRRR____RRRREEEEMMMMOOOOVVVVEEEE((((2222))))
-
-
-
- object. The _f_l_a_g_s argument can contain the following symbols bitwise
- OR'ed together:
-
- ATTR_ROOT
- Look for _a_t_t_r_n_a_m_e in the rrrrooooooootttt address space, not in the uuuusssseeeerrrr address
- space. (limited to use by super-user only)
-
- ATTR_DONTFOLLOW
- Do not follow symbolic links when resolving a _p_a_t_h on an _a_t_t_r__r_e_m_o_v_e
- function call. The default is to follow symbolic links.
-
- _a_t_t_r__r_e_m_o_v_e will fail if one or more of the following are true:
-
- [ENOATTR] The attribute name given is not associated with the
- indicated filesystem object.
-
- [ENOENT] The named file does not exist.
-
- [EPERM] The effective user ID does not match the owner of the
- file and the effective user ID is not super-user.
-
- [ENOTDIR] A component of the path prefix is not a directory.
-
- [EACCES] Search permission is denied on a component of the path
- prefix.
-
- [EINVAL] A bit was set in the _f_l_a_g argument that is not defined
- for this system call.
-
- [EFAULT] _P_a_t_h points outside the allocated address space of the
- process.
-
- [ELOOP] A path name lookup involved too many symbolic links.
-
- [ENAMETOOLONG] The length of _p_a_t_h exceeds {_M_A_X_P_A_T_H_L_E_N}, or a pathname
- component is longer than {_M_A_X_N_A_M_E_L_E_N}.
-
- _a_t_t_r__r_e_m_o_v_e_f will fail if:
-
- [ENOATTR] The attribute name given is not associated with the
- indicated filesystem object.
-
- [EINVAL] A bit was set in the _f_l_a_g argument that is not defined for
- this system call, or _f_d refers to a socket, not a file.
-
- [EFAULT] _A_t_t_r_n_a_m_e points outside the allocated address space of the
- process.
-
- [EBADF] _F_d does not refer to a valid descriptor.
-
-
-
-
-
-
- PPPPaaaaggggeeee 2222
-
-
-
-
-
-
- AAAATTTTTTTTRRRR____RRRREEEEMMMMOOOOVVVVEEEE((((2222)))) AAAATTTTTTTTRRRR____RRRREEEEMMMMOOOOVVVVEEEE((((2222))))
-
-
-
- SSSSEEEEEEEE AAAALLLLSSSSOOOO
- attr(1),
- attr_get(2), attr_getf(2),
- attr_list(2), attr_listf(2)
- attr_multi(2), attr_multif(2)
- attr_set(2), attr_setf(2),
-
- DDDDIIIIAAAAGGGGNNNNOOOOSSSSTTTTIIIICCCCSSSS
- Upon successful completion, a value of 0 is returned. Otherwise, a value
- of -1 is returned and _e_r_r_n_o is set to indicate the error.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- PPPPaaaaggggeeee 3333
-
-
-
-